|
Lokalizacja w menu |
---|
Modyfikacja → Odsunięcie |
Środowisko pracy |
Rysunek Roboczy, BIM |
Domyślny skrót |
O S |
Wprowadzono w wersji |
- |
Zobacz także |
Odsunięcie 2D |
Narzędzie Odsunięcie przesuwa każdy segment wybranego obiektu o zadaną odległość lub tworzy przesuniętą kopię wybranego obiektu.
Odsunięcie linii łamanej
Zobacz także strony: Rysunek Roboczy: Przyciąganie i Rysunek Roboczy: Wiązania.
Skróty klawiaturowe jedno znakowe dostępne w panelu zadań można zmienić. Zobacz stronę Preferencji. Skróty wymienione tutaj są skrótami domyślnymi (w wersji 1.0).
Zobacz również stronę: Dokumentacja API generowana automatycznie oraz Podstawy tworzenia skryptów FreeCAD.
Aby odsunąć obiekty należy użyć metody offset
modułu Rysunek Roboczy. Metoda ta może obsługiwać tylko obiekty typupolilinia, okrąg, prostokąt, wielokąt i linia złożona.
offset_obj = offset(obj, delta, copy=False, bind=False, sym=False, occ=False)
obj
to obiekt, który ma zostać odsunięty.delta
zawiera informacje o odsunięciu:
copy
wynosi True
, oryginalny obiekt jest zachowywany i tworzony jest nowy obiekt.bind
wynosi True
, tworzona jest ściana poprzez połączenie kształtu oryginalnego obiektu z kształtem jego odsunięcia. Działa to tylko dla otwartych polilinii.sym
wynosi True
, a wartość parametru bind
również wynosi True
, to odsunięcie jest wykonywane po obu stronach oryginalnego obiektu, a całkowita szerokość jest równa długości podanego wektora. Działa to tylko dla otwartych polilinii.occ
wynosi True
używane jest odsunięcie w stylu OCC. Zobacz Opcje. Jeśli wartość parametru occ
wynosi True
, argumenty bind
i sym
są ignorowane.offset_obj
jest zwracany z oryginalnym obiektem odsunięcia, lub z nowym obiektem. Jeśli wartość parametru bind
wynosi True
lub wartość parametru occ
wynosi True
, to nowy obiekt jest obiektem Część: Cecha
.Przykład:
import FreeCAD as App
import Draft
doc = App.newDocument()
p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1500, 2000, 0)
p3 = App.Vector(4000, 0, 0)
wire = Draft.make_wire([p1, p2, p3])
doc.recompute()
vector = App.Vector(-200, 150, 0)
offset1 = Draft.offset(wire, vector, copy=True, bind=True, sym=True)
offset2 = Draft.offset(wire, 3*vector, copy=True)
offset3 = Draft.offset(wire, 6*vector, copy=True)
offset4 = Draft.offset(wire, 9*vector, copy=True)
offset5 = Draft.offset(wire, 1.5*vector, copy=True, occ=True)
doc.recompute()